diff --git a/user_guide_src/source/general/helpers.rst b/user_guide_src/source/general/helpers.rst
index 71cb8b2..3a98311 100644
--- a/user_guide_src/source/general/helpers.rst
+++ b/user_guide_src/source/general/helpers.rst
@@ -3,10 +3,10 @@
 ################
 
 Helpers, as the name suggests, help you with tasks. Each helper file is
-simply a collection of functions in a particular category. There are URL
-Helpers, that assist in creating links, there are Form Helpers that help
-you create form elements, Text Helpers perform various text formatting
-routines, Cookie Helpers set and read cookies, File Helpers help you
+simply a collection of functions in a particular category. There are **URL
+Helpers**, that assist in creating links, there are Form Helpers that help
+you create form elements, **Text Helpers** perform various text formatting
+routines, **Cookie Helpers** set and read cookies, File Helpers help you
 deal with files, etc.
 
 Unlike most other systems in CodeIgniter, Helpers are not written in an
@@ -19,9 +19,9 @@
 in your :doc:`controller <../general/controllers>` and
 :doc:`views <../general/views>`.
 
-Helpers are typically stored in your system/helpers, or
-application/helpers directory. CodeIgniter will look first in your
-application/helpers directory. If the directory does not exist or the
+Helpers are typically stored in your **system/helpers**, or
+**application/helpers directory**. CodeIgniter will look first in your
+**application/helpers directory**. If the directory does not exist or the
 specified helper is not located there CI will instead look in your
 global system/helpers folder.
 
@@ -32,11 +32,11 @@
 
 	$this->load->helper('name');
 
-Where name is the file name of the helper, without the .php file
+Where **name** is the file name of the helper, without the .php file
 extension or the "helper" part.
 
-For example, to load the URL Helper file, which is named
-url_helper.php, you would do this::
+For example, to load the **URL Helper** file, which is named
+**url_helper.php**, you would do this::
 
 	$this->load->helper('url');
 
@@ -63,9 +63,8 @@
 
 If you find that you need a particular helper globally throughout your
 application, you can tell CodeIgniter to auto-load it during system
-initialization. This is done by opening the
-application/config/autoload.php file and adding the helper to the
-autoload array.
+initialization. This is done by opening the **application/config/autoload.php** 
+file and adding the helper to the autoload array.
 
 Using a Helper
 ==============
@@ -84,8 +83,8 @@
 "Extending" Helpers
 ===================
 
-To "extend" Helpers, create a file in your application/helpers/ folder
-with an identical name to the existing Helper, but prefixed with MY\_
+To "extend" Helpers, create a file in your **application/helpers/** folder
+with an identical name to the existing Helper, but prefixed with **MY\_**
 (this item is configurable. See below.).
 
 If all you need to do is add some functionality to an existing helper -
@@ -98,8 +97,8 @@
 functions a Helper provides, or to modify how the native Helper
 functions operate.
 
-For example, to extend the native Array Helper you'll create a file
-named application/helpers/MY_array_helper.php, and add or override
+For example, to extend the native **Array Helper** you'll create a file
+named **application/helpers/MY_array_helper.php**, and add or override
 functions::
 
 	// any_in_array() is not in the Array Helper, so it defines a new function
@@ -130,11 +129,11 @@
 
 The filename prefix for "extending" Helpers is the same used to extend
 libraries and Core classes. To set your own prefix, open your
-application/config/config.php file and look for this item::
+**application/config/config.php** file and look for this item::
 
 	$config['subclass_prefix'] = 'MY_';
 
-Please note that all native CodeIgniter libraries are prefixed with CI\_
+Please note that all native CodeIgniter libraries are prefixed with **CI\_**
 so DO NOT use that as your prefix.
 
 Now What?
diff --git a/user_guide_src/source/general/index.rst b/user_guide_src/source/general/index.rst
index 1ece12b..ae0d096 100644
--- a/user_guide_src/source/general/index.rst
+++ b/user_guide_src/source/general/index.rst
@@ -1,6 +1,39 @@
+##################
+General
+##################
+
+
+-  :doc:`CodeIgniter URLs <urls>`
+-  :doc:`Controllers <controllers>`
+-  :doc:`Reserved Names <reserved_names>`
+-  :doc:`Views <views>`
+-  :doc:`Models <models>`
+-  :doc:`Helpers <helpers>`
+-  :doc:`Using CodeIgniter Libraries <libraries>`
+-  :doc:`Creating Your Own Libraries <creating_libraries>`
+-  :doc:`Using CodeIgniter Drivers <drivers>`
+-  :doc:`Creating Your Own Drivers <creating_drivers>`
+-  :doc:`Creating Core Classes <core_classes>`
+-  :doc:`Creating Ancillary Classes  <ancillary_classes>`
+-  :doc:`Hooks - Extending the Core <hooks>`
+-  :doc:`Auto-loading Resources <autoloader>`
+-  :doc:`Common Function <common_functions>`
+-  :doc:`URI Routing <routing>`
+-  :doc:`Error Handling <errors>`
+-  :doc:`Caching <caching>`
+-  :doc:`Profiling Your Application <profiling>`
+-  :doc:`Running via the CLI <cli>`
+-  :doc:`Managing Applications <managing_apps>`
+-  :doc:`Handling Multiple Environments <environments>`
+-  :doc:`Alternative PHP Syntax <alternative_php>`
+-  :doc:`Security <security>`
+-  :doc:`PHP Style Guide <styleguide>`
+-  :doc:`Server Requirements <requirements>`
+-  :doc:`Credits <credits>`
+
 .. toctree::
 	:glob:
-	:hidden:
 	:titlesonly:
+	:hidden:
 	
 	*
\ No newline at end of file
diff --git a/user_guide_src/source/general/models.rst b/user_guide_src/source/general/models.rst
index 4dd3e57..b816f95 100644
--- a/user_guide_src/source/general/models.rst
+++ b/user_guide_src/source/general/models.rst
@@ -65,7 +65,7 @@
 Anatomy of a Model
 ==================
 
-Model classes are stored in your application/models/ folder. They can be
+Model classes are stored in your **application/models/ folder**. They can be
 nested within sub-folders if you want this type of organization.
 
 The basic prototype for a model class is this::
@@ -78,7 +78,7 @@
 	    }
 	}
 
-Where Model_name is the name of your class. Class names **must** have
+Where **Model_name** is the name of your class. Class names **must** have
 the first letter capitalized with the rest of the name lowercase. Make
 sure your class extends the base Model class.
 
@@ -148,7 +148,7 @@
 If you find that you need a particular model globally throughout your
 application, you can tell CodeIgniter to auto-load it during system
 initialization. This is done by opening the
-application/config/autoload.php file and adding the model to the
+**application/config/autoload.php** file and adding the model to the
 autoload array.
 
 Connecting to your Database
diff --git a/user_guide_src/source/general/security.rst b/user_guide_src/source/general/security.rst
index d9d5b72..4d7a213 100644
--- a/user_guide_src/source/general/security.rst
+++ b/user_guide_src/source/general/security.rst
@@ -35,8 +35,8 @@
 of 0. This disables native PHP errors from being rendered as output,
 which may potentially contain sensitive information.
 
-Setting CodeIgniter's ENVIRONMENT constant in index.php to a value of
-'production' will turn off these errors. In development mode, it is
+Setting CodeIgniter's **ENVIRONMENT** constant in index.php to a value of
+**\'production\'** will turn off these errors. In development mode, it is
 recommended that a value of 'development' is used. More information
 about differentiating between environments can be found on the :doc:`Handling
 Environments <environments>` page.
diff --git a/user_guide_src/source/libraries/calendar.rst b/user_guide_src/source/libraries/calendar.rst
index 471fd64..3964db2 100644
--- a/user_guide_src/source/libraries/calendar.rst
+++ b/user_guide_src/source/libraries/calendar.rst
@@ -86,28 +86,21 @@
 month heading, and the "short" day names. More information regarding
 preferences below.
 
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| Preference            | Default   | Options                                       |    Description                                                    |
-+=======================+===========+===============================================+===================================================================+
-| **template**          | None      | None                                          | A string containing your calendar template.                       |
-|                       |           |                                               | See the template section below.                                   |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **local_time**        | time()    | None                                          | A Unix timestamp corresponding to the current time.               |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **start_day**         | sunday    | Any week day (sunday, monday, tuesday, etc.)  | Sets the day of the week the calendar should start on.            |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **month_type**        | long      | long, short                                   | Determines what version of the month name to use in the header.   |
-|                       |           |                                               | long = January, short = Jan.                                      |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **day_type**          | abr       | long, short, abr                              | Determines what version of the weekday names to use in            |
-|                       |           |                                               | the column headers.                                               |
-|                       |           |                                               | long = Sunday, short = Sun, abr = Su.                             |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **show_next_prev**    | FALSE     | TRUE/FALSE (boolean)                          | Determines whether to display links allowing you to toggle        |
-|                       |           |                                               | to next/previous months. See information on this feature below.   |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
-| **next_prev_url**     | None      | A URL                                         | Sets the basepath used in the next/previous calendar links.       |
-+-----------------------+-----------+-----------------------------------------------+-------------------------------------------------------------------+
+======================  ===========  ===============================================  ===================================================================
+Preference              Default		Options						Description                                                    
+======================  ===========  ===============================================  ===================================================================
+**template**           	None		None                                         	A string containing your calendar template.
+											See the template section below.
+**local_time**        	time()		None						A Unix timestamp corresponding to the current time.
+**start_day**         	sunday		Any week day (sunday, monday, tuesday, etc.) 	Sets the day of the week the calendar should start on.
+**month_type**        	long          	long, short                                   	Determines what version of the month name to use in the header.
+											long = January, short = Jan.
+**day_type**		abr		long, short, abr 				Determines what version of the weekday names to use in 
+											the column headers. long = Sunday, short = Sun, abr = Su.
+**show_next_prev**	FALSE		TRUE/FALSE (boolean)				Determines whether to display links allowing you to toggle
+											to next/previous months. See information on this feature below.
+**next_prev_url**     	None     	  A URL						Sets the basepath used in the next/previous calendar links.
+======================  ===========  ===============================================  ===================================================================
 
 
 Showing Next/Previous Month Links
diff --git a/user_guide_src/source/libraries/form_validation.rst b/user_guide_src/source/libraries/form_validation.rst
index 53293ca..e7875bc 100644
--- a/user_guide_src/source/libraries/form_validation.rst
+++ b/user_guide_src/source/libraries/form_validation.rst
@@ -823,7 +823,6 @@
 The following is a list of all the native rules that are available to
 use:
 
-.. table::
 ======================= ========== ============================================================================================= =======================
 Rule                    Parameter  Description                                                                                   Example
 ======================= ========== ============================================================================================= =======================
